/* 
 * File:   JRepository.cpp
 * Author: johnneyshi
 * 
 * Created on 2013年1月6日, 上午8:57
 */

#include "JRepository.h"
#include "JDir.h"
#include "JUuid.h"

int JRepository::isUpdateOpen = 0;

JRepository::JRepository()
{
    
}

JRepository::JRepository(const JRepository& orig) 
{
}

JRepository::~JRepository()
{
}

JErrorInfo JRepository::OpenUpdate()
{
    isUpdateOpen = 1;
}

JUpdateConflict JRepository::Update(JWorkingCopiesDir _dir)
{
//    if(isUpdateOpen == 1)
//    {
//        char buff[1024];
//        sprintf(buff,"%s/%d",this->rootPath.c_str(),this->currentVersion);
//        JDir::CreateDir(buff);
//        JRepositoryFile repoFile;
//        SaveRepositoryFile(_dir,repoFile);
//        listRepoFile.push_back(_repoFile);
//        ++isUpdateOpen;
//    }
//    else if(isUpdateOpen > 1)
//    {
//        
//    }
//    else
//    {
//        
//    }
    JUpdateConflict conflict;
    return conflict;
}

JUpdateConflict JRepository::Update(JWorkingCopiesFile _file)
{
    JUpdateConflict conflict;
    return conflict;
}

JErrorInfo JRepository::CloseUpdate()
{
    isUpdateOpen = 0;
}

void JRepository::SaveRepositoryFile(JWorkingCopiesBaseFile _file,JRepositoryFile& _repoFile)
{
//    _repoFile.file = _file;
//    _repoFile.realPosition = currentVersion;
//    _repoFile.realFileName = JUuid::ToString();
//    //////////应该被提前到从服务器读取stream的时候
//    //dir
//    if(_repoFile.file.dirOrFile == 0)
//    {
//        
//    }
//    //file. save file.
//    else if(_repoFile.file.dirOrFile == 1)
//    {
//        JFile& file = ((JWorkingCopiesFile)(_repoFile.file)).file;
//        char buff[1024];
//        sprintf(buff,"%s/%d/%s",this->rootPath,_repoFile.realPosition,_repoFile.realFileName);
//        JFile file2(buff);
//    }  
}